Integrated circuit microprocessors must, in many cases, be connected with other integrated circuit devices in order to provide certain functions. Examples of such external devices include memories, serial interface adaptors, analog-to-digital converters and many others. In most cases, each such external device will require an input signal, which is usually referred to as a chip select signal, in order for the device to be appropriately activated when accessed by the microprocessor.
Typically, a designer of a system using a microprocessor and other integrated circuits will use "glue logic" to generate the required chip select signals from the address and bus control signals produced by the microprocessor itself. This extra logic adds significantly to the cost of the system being designed and, therefore, is highly undesirable.
The 80196 (also referred to as the iAPX 186), available from the Intel Corporation of Santa Clara, California, is an integrated circuit microprocessor which has internal logic for generating chip select signals. The chip select logic has limited ability to program the address range for which each of the seven possible chip selects is active and can programmably insert wait states into the bus cycles for which each chip select is active. In addition, some of the chip selects may be programmed to be active in only the memory or I/O address spaces of the microprocessor.
Another example of an integrated circuit microprocessor with on-board chip select logic is the MC68HC11F1, available from Motorola, Inc. of Austin, Tex. The chip select logic of this microprocessor is disclosed in the U.S. Pat. No. 5,151,986, issued on Sep. 29, 1992. The chip select logic of this part includes a control register by means of which the timing, polarity and number of wait states can be individually programmed for each of several chip select outputs.
A major problem associated with the integration of chip select logic onto a microprocessor integrated circuit involves the provision of sufficient flexibility to the user. The use of glue logic is extremely flexible, since the system designer has wide latitude in the placement of each external device with the microprocessor's memory map and the timing and other characteristics of the chip select signals themselves. This flexibility is very useful, since the variety of possible system designs and chip select requirements for particular peripheral devices is great. Providing sufficient flexibility in an integrated chip select unit while constraining the size of the unit within reasonable limits is quite difficult.